草庐IT

Java 对象和类

全部标签

javascript - JS 对象文字和 JSON 字符串有什么区别?

我对人们所说的对象文字、JSON、JavaScript对象的确切含义感到困惑,对我来说它们看起来很相似:{foo:'bar',bar:'baz'}AFAIK,上面是对象字面量、json以及javascript对象,不是吗?对象字面量和json是一个意思吗?你们怎么区分哪个是什么? 最佳答案 变量jsonString包含一个JSON字符串:varjsonString='{"foo":"bar","bar":"baz"}'变量javascriptObject包含一个javascript对象,使用对象字面量初始化:varjavascrip

java - 是否有与 Javascript 的 with 语句等效的 Java?

这个问题在这里已经有了答案:WITHstatementinJava(8个答案)关闭8年前。是否有类似的方法在Java中声明with-statement(如在Javascript中),或者是否有结构原因导致这不可能?例如,这个Javascript:with(obj){getHomeworkAverage();getTestAverage();getAttendance();}...很好也很容易。然而,在Java中,方法调用似乎必须每次都链接到它们的对象,没有这样优雅的快捷方式可用:obj.getHomeworkAverage();obj.getTestAverage();obj.getA

JavaScript 对象子类

我想创建继承自父类(superclass)A的子类B。我的代码在这里:functionA(){this.x=1;}B.prototype=newA;functionB(){A.call(this);this.y=2;}b=newB;Console.log(b.x+""+b.y);运行时,显示B未定义。 最佳答案 您必须在尝试访问其原型(prototype)之前定义B构造函数:functionA(){this.x=1;}functionB(){A.call(this);this.y=2;}B.prototype=newA;b=newB

javascript - 将 javascript 对象序列化为 json 并返回

我正在使用jQuerypost方法将一些数据发送到服务器。我不想自己构建JSON字符串,而是想简单地使用一个JavaScript对象。当我得到返回字符串(JSON格式)时,我想自动构造一个相应的JavaScript对象。这可能吗? 最佳答案 在JSON2documentation中检查JSON.stringify()和JSON.parse()例子:myData=JSON.parse(text);//fromjsonstringtojsobjectvarmyJSONText=JSON.stringify(myObject,replac

javascript - 使用 Underscore.js 根据属性从数组中删除对象

我在javascript中有一个对象数组。每个对象的形式都是obj{location:"left",//somestringweight:0//canbezeroornonzero}我想返回数组的过滤副本,其中删除了权重属性为零的对象使用下划线的简洁方法是什么? 最佳答案 你甚至不需要下划线,因为有filterECMAScript5的方法:varnewArr=oldArr.filter(function(o){returno.weight!==0;});但是如果你想使用下划线(例如支持不支持ECMAScript5的旧浏览器),你可以

javascript - Node js 对象导出

有一个非常简单的问题,我无法找到有关从Nodejs中的模块导出对象的答案,更具体地说是访问对象属性。这是我导出的对象:exports.caravan={month:"july"};这是我的主要模块:varcaravan=require("./caravan")console.log(caravan.month);console.log(caravan.caravan.month);为什么我不能直接使用caravan.month访问属性,而必须编写caravan.caravan.month? 最佳答案 考虑使用require,您可以访

javascript - 为什么在 JavaScript 中函数既是构造函数又是对象?

我最近对此进行了大量研究,但尚未得到真正可靠的答案。我在某处读到,当JavaScript引擎遇到函数语句时会创建一个新的Function()对象,这让我相信它可能是一个对象的子对象(因此成为一个对象)。所以我给DouglasCrockford发了邮件,他的回答是:Notexactly,becauseafunctionstatementdoesnotcallthecompiler.Butitproducesasimilarresult.此外,据我所知,您不能在函数构造函数上调用成员,除非它已被实例化为一个新对象。所以这是行不通的:functionmyFunction(){this.myP

java - 为什么 java/javascript/python 强制在方法名称后使用 (),即使它不带参数?

我最常见的错误之一是我永远记不住某个东西是方法还是属性,所以我不断地添加或删除括号。所以我想知道在显式调用对象的属性和方法之间是否存在良好的逻辑。显然,它允许您拥有共享相同名称的属性和方法,但我认为这种情况并不常见。我能想到的唯一大好处就是可读性。有时您在查看代码时可能想知道某个东西是方法还是属性,但我很难想出具体的示例,而这确实有帮助。但是我是n00b,所以我可能还没有遇到过这种情况。我会很感激这种情况的例子。此外,还有其他语言的区别不明显吗?无论如何,如果你能回答,这将帮助我减少每次犯这个错误时的烦恼^-^。更新:感谢大家到目前为止的精彩回答!我只有大约一周的js和1天的pytho

javascript - 如何在数组中查找对象的索引

我有一个JSON字符串:varStr="[{'label':'Month'},{label:'within'},{label:'From'},{label:'Where'},]";我通过eval把它转换成了一个对象:vartagString=eval(Str);我想在没有循环的情况下获取月份的索引。有没有更好的方法在不使用循环的情况下获取数组中对象的索引?提前致谢! 最佳答案 不要用eval解析json!使用JSON.parse.Array.map是这里循环的一个很好的替代方法:varstr='[{"label":"Month"},

javascript - 如何在javascript中获取对象的第一个成员

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:Accessthefirstpropertyofanobject我有一个像这样的javascript对象:varlist={item1:"a",item2:"b",item3:"c",item4:"d"};在JS中使用反射,我可以说list["item1"]以编程方式获取或设置每个成员,但我不想依赖成员的名称(对象可能会扩展)。所以我想得到这个对象的第一个成员。如果我编写以下代码,它会返回未定义的。任何人都知道如何做到这一点?varfirst=list[0];//thisreturnsundefined